home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3n / t6recvfrom.z / t6recvfrom
Encoding:
Text File  |  2002-10-03  |  6.4 KB  |  133 lines

  1.  
  2.  
  3.  
  4. tttt6666rrrreeeeccccvvvvffffrrrroooommmm((((3333NNNN))))                                                  tttt6666rrrreeeeccccvvvvffffrrrroooommmm((((3333NNNN))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      t6recvfrom - Read security attributes and data from a trusted endpoint
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      cccccccc [[[[ ffffllllaaaaggggssss ............ ]]]] ffffiiiilllleeee
  13.  
  14.      ####iiiinnnncccclllluuuuddddeeee <<<<ssssyyyyssss////tttt6666aaaattttttttrrrrssss....hhhh>>>>
  15.  
  16.      iiiinnnntttt tttt6666rrrreeeeccccvvvvffffrrrroooommmm((((iiiinnnntttt ffffdddd,,,, cccchhhhaaaarrrr ****bbbbuuuuffff,,,, iiiinnnntttt lllleeeennnn,,,, iiiinnnntttt ffffllllaaaaggggssss,,,,
  17.           ssssttttrrrruuuucccctttt ssssoooocccckkkkaaaaddddddddrrrr ****ffffrrrroooommmm,,,, iiiinnnntttt ****ffffrrrroooommmmlllleeeennnn,,,,
  18.           tttt6666aaaattttttttrrrr____tttt aaaattttttttrrrr____ppppttttrrrr,,,, tttt6666mmmmaaaasssskkkk____tttt ****nnnneeeewwww____aaaattttttttrrrrssss))));;;;
  19.  
  20. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  21.      _t_6_r_e_c_v_f_r_o_m receives data and its associated security attributes from a
  22.      communication endpoint.  The _f_r_o_m and _f_r_o_m_l_e_n parameters are only used if
  23.      you wish to receive the source address for the data.  This may not be
  24.      applicable for some trusted endpoints.  If not used, these fields should
  25.      be set to _0.  If _f_r_o_m is not a NULL pointer, the source address of the
  26.      message is filled in.  _f_r_o_m_l_e_n is a value-result parameter, initialized
  27.      to the size of the buffer associated with _f_r_o_m, and modified on return to
  28.      indicate the actual size of the address stored there.  The length of the
  29.      message is returned.  If a message is too long to fit in the supplied
  30.      buffer, excess bytes may be discarded depending on the type of socket the
  31.      message is received from (see _s_o_c_k_e_t(_3_N)).
  32.  
  33.      The _f_l_a_g_s parameter is formed by ORing one or more of the following:
  34.  
  35.      MSG_OOB
  36.           Read any out-of-band data present on the socket rather than the
  37.           regular in-band data.  If _a_t_t_r__p_t_r is non-NULL, out-of-band data
  38.           security attributes are also retrieved.
  39.  
  40.      MSG_PEEK
  41.           Peek at the data present on the socket; the data is returned, but
  42.           not consumed, so that a subsequent receive operation will see the
  43.           same data.  If _a_t_t_r__p_t_r is non-NULL, security attributes of the data
  44.           are also peeked.
  45.  
  46.      _a_t_t_r__p_t_r specifies a control structure in which to store those attributes
  47.      the caller wishes to retrieve. To get an attribute from the control
  48.      structure, see _t_6_g_e_t__a_t_t_r(_3_N).  Any attribute that the receiving process
  49.      does not care to receive may not be specified in the control structure.
  50.      This minimizes the attribute translation time when passing the attributes
  51.      out of the kernel.
  52.  
  53.      Note that the following attributes will never be returned in the argument
  54.      _t_6_a_t_t_r__t: TTTT6666____NNNNAAAATTTT____CCCCAAAAVVVVEEEEAAAATTTTSSSS, TTTT6666____AAAACCCCLLLL, TTTT6666____IIIILLLL, TTTT6666____PPPPIIIIDDDD, TTTT6666____RRRREEEESSSSVVVV11110000,
  55.      TTTT6666____AAAAUUUUDDDDIIIITTTT____IIIINNNNFFFFOOOO, TTTT6666____CCCCLLLLEEEEAAAARRRRAAAANNNNCCCCEEEE.
  56.  
  57.      If the _t_6_n_e_w__a_t_t_r(_3_N) call was made previously with a setting of ON, the
  58.      security attributes of the received data will be returned only if they
  59.      have changed from the last set read.  *_n_e_w__a_t_t_r_s is set to the mask of
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. tttt6666rrrreeeeccccvvvvffffrrrroooommmm((((3333NNNN))))                                                  tttt6666rrrreeeeccccvvvvffffrrrroooommmm((((3333NNNN))))
  71.  
  72.  
  73.  
  74.      those attributes actually returned. If new attributes are detected, all
  75.      attributes requested by the receiving process are returned, not just
  76.      those that have changed.
  77.  
  78.      Again, it is critical that the return value always be checked.  It is the
  79.      number of bytes actually received, or -_1 with the error code stored in
  80.      _e_r_r_n_o.  Revocation of access is possible if the received data changes to
  81.      a level not accessible to the receiving process.
  82.  
  83. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEE
  84.      _t_6_r_e_c_v_f_r_o_m returns the appropriate error code on failure, and the number
  85.      of bytes read on successful completion.
  86.  
  87. EEEERRRRRRRROOOORRRRSSSS
  88.      [EBADF]        _f_d is an invalid file descriptor.
  89.  
  90.      [EINTR]        The operation was interrupted by delivery of a signal
  91.                     before any data was available to be received.
  92.  
  93.      [EIO]          An I/O error occurred while reading from or writing to the
  94.                     file system.
  95.  
  96.      [ENOMEM]       There was insufficient user memory available for the
  97.                     operation to complete.
  98.  
  99.      [ENOSR]        There were insufficient STREAMS resources available for
  100.                     the operation to complete.
  101.  
  102.      [ENOTSOCK]     ffffdddd is not a socket.
  103.  
  104.      [ESTALE]       A stale NFS file handle exists.
  105.  
  106. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  107.      libt6(3N), t6get_attr(3N), t6sendto(3N).
  108.  
  109. SSSSOOOOUUUURRRRCCCCEEEE
  110.      Trusted Systems Interoperability Group
  111.  
  112. NNNNOOOOTTTTEEEESSSS
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.                                                                         PPPPaaaaggggeeee 2222
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.